﻿// 10105.  欧拉回路.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>


//https://loj.ac/p/10105

/*
有一天一位灵魂画师画了一张图，现在要你找出欧拉回路，即在图中找一个环使得每条边都在环上出现恰好一次。

一共两个子任务：

这张图是无向图。（50 分）

这张图是有向图。（50 分）

输入格式
第一行一个整数 t，表示子任务编号。t \in \{1, 2\}，如果 t = 1 则表示处理无向图的情况，如果 t = 2 则表示处理有向图的情况。

第二行两个整数 n, m，表示图的结点数和边数。

接下来 m 行中，第 i 行两个整数 v_i, u_i，表示第 i 条边（从 1 开始编号）。保证 1 <=q v_i, u_i <=q n。

如果 t = 1 则表示 v_i 到 u_i 有一条无向边。

如果 t = 2 则表示 v_i 到 u_i 有一条有向边。

图中可能有重边也可能有自环。

输出格式
如果不可以一笔画，输出一行 NO。

否则，输出一行 YES，接下来一行输出一组方案。

如果 t = 1，输出 m 个整数 p_1, p_2, \dots, p_m。令 e = \lvert p_i \rvert，那么 e 表示经过的第 i 条边的编号。
如果 p_i 为正数表示从 v_e 走到 u_e，否则表示从 u_e 走到 v_e。

如果 t = 2，输出 m 个整数 p_1, p_2, \dots, p_m。其中 p_i 表示经过的第 i 条边的编号。

1
3 3
1 2
2 3
1 3

YES
1 2 -3

2
5 6
2 3
2 5
3 4
1 2
4 2
5 1


YES
4 1 3 5 2 6

*/

int main()
{
    std::cout << "Hello World!\n";
}

 